/**
 * 
 */
package com.woniuxy.amusementparkos.dao.fzw;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.woniuxy.amusementparkos.entity.fzw.Role;

/**
 *
 * @author fzw
 *
 * 2020年4月29日上午6:43:52
 */
public interface RoleDao {

	/**
	 * 无条件查询所有角色
	 * @return
	 */
	List<Role> selectAllRole();

	/**
	 * @param page
	 * @param limit
	 * @return
	 */
	List<Role> selectAllRoleByPageNumber(@Param("page")Integer page,@Param("limit") Integer limit);

	/**
	 * 插入角色信息
	 * @param role
	 */
	void insertRole(Role role);

	/**
	 * 更新角色信息
	 * @param role
	 */
	void updateRole(Role role);

	/**
	 * 删除角色信息
	 * @param role_ids
	 */
	void deleteRoles(int[] role_ids);

	/**
	 * 根据角色查询用户角色关联表中，用户id是否存在
	 * @param role_id 角色编号
	 * @return
	 */
	int selectUserInUserAndRoleById(int role_id);

	/**
	 * @param usingRole
	 * @return
	 */
	String[] selectRolesByIds(@Param("usingRole")List<Integer> usingRole);

	/**
	 * @return
	 */
	Long selectCount();

	/**
	 * @param role_id
	 */
	void deleteRoleAndPowerByRoleId(int role_id);

	/**
	 * @param role_id
	 * @param power_id
	 */
	void insertRoleAndPowerByRoleId(@Param("role_id")int role_id, @Param("power_id")int power_id);


}
